In many applications, data can be provided in a time series (or data streams), in which data values are provided in a series of time points. Example applications in which data can be expressed in time series include financial applications (e.g., time series of asset prices, revenue, profit, currency exchange rates, etc.), and network monitoring (e.g., metrics regarding performance of various aspects of a network, performance metrics of servers, performance metrics of routers, etc.), and so forth.
The amount of data in a time series for a given application can be very large. As a result, it is often difficult for a user to effectively visualize the time series of data. Conventionally, techniques for managing a large time series of data include sampling or aggregation to reduce data size, or using a scrolling technique to fit a large amount of data in a display device.